// Contrôle la partie audio.


#ifndef AUDIO_H
#define AUDIO_H

#include <SDL_mixer.h>

int playsound(const char* file, int volume, int loops){

  Mix_Chunk *gChunk = NULL;
  gChunk = Mix_LoadWAV(file);
  Mix_VolumeChunk(gChunk, volume);
  
  if(Mix_PlayChannel(-1, gChunk, loops)==-1){
  
    printf("Erreur : Le son n'a pas pu être joué.");
    Mix_FreeChunk(gChunk);
    return 1;
  
  }
  
  return 0;
	
}

int playmusic(const char* file, int loops, int fadeout=0, double pos=0){

  Mix_Music *gMusic = NULL;
  gMusic = Mix_LoadMUS(file);
  
  if(Mix_FadeInMusicPos(gMusic, loops, fadeout, pos)==-1){
  
    printf("Erreur : La musique n'a pas pu être joué.");
    Mix_FreeMusic(gMusic);
    return 1;
  
  }
  
  return 0;

}

int pausemusic(){
   
   Mix_PauseMusic();
   
   if(Mix_PausedMusic()==-1){
   
     printf("Erreur : La musique n'a pas pu être mise en pause.");
     return 1;
   
   }
   
   if(Mix_PlayingMusic()==-1){
   
     printf("Erreur : Aucune musique est joué.");
     return 1;
   
   }
   
   return 0;

}

void resumemusic(){

  Mix_ResumeMusic();
  
}  

void stopmusic(int fadeout=0){ // En ms.
  
  Mix_FadeOutMusic(fadeout);

}

void volumemusic(int volume){

  Mix_VolumeMusic(volume);

}

#endif
